package com.wisdytech.linkdcs.configuration.service;

import java.util.List;
import java.util.Map;

/**
 * 组态设计服务层接口
 */
public interface IConfigurationDesignService {

    /**
     * 获取所有设备参数
     * @return list
     */
    List<Map<String, Object>> getEquipCodes();


    /**
     * 根据主键获取设备参数
     * @return map
     */
    List<Map<String, Object>> getEquipParams(String pkId);


    /**
     * 获取目标路径下所有的js文件名
     * @param dir 文件夹路径
     * @param type 类型
     * @return list
     */
    List<Map<String, Object>> getFiles(String dir,String type);
    
    /**
     * 获取目标路径下所有的js文件名
     * @param dir 文件夹路径
     * @param type 类型
     * @return list
     */
    List<Map<String, Object>> getItemFils(String dir);
    

    /**
     *	json文件获取
     * @param fileKey 主键
     * @param name 相对路径加文件名加后缀
     * @param type 类型
     * @return string json
     */
    String getFileContent(String fileKey,String name, String type);
    
    
    /**
     * 上传指定文件
     * 1、保存组态设计json
     * 2、保存临时使用json
     * @param path 文件夹路径
     * @param fileKey 组态设计器唯一id
     * @param name 文件名
     * @param content 内容
     * @param type 类型
     * @param equipNo 设备编码json
     * @return
     */
    boolean saveFile(String path,String fileKey,String name,String content,String type,String equipNo);
    
    /**
     * 文件名检测
     * @param dir 文件夹路径
     * @param name 文件名
     * @return
     */
    boolean checkControlName(String dir,String name);
    
    /**
     * 文件上传
     * @param file
     * @param filePath
     * @param fileName
     * @return
     */
    public void uploadFile(byte[] file, String filePath, String fileName);
    
}
